package com.yorick.authority.dao;

import com.yorick.authority.entitys.*;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface AccountsMapper {


    //验证手机号是否存在
    List<AccountDto> isAccountExist(AccountDto data);

    //添加用户
    void insertAccount(AccountDto data);

    //绑定用户和角色
    void insertUserRole(UserRoleDto data);

    //绑定用户和机构
    void insertUserDepartment(UserDepartmentDto data);

    //查询用户列表
    List<AccountDto> findAccountList(BaseListDto data);

    Integer findAccountTotal(BaseListDto data);

    //修改账户
    void updateAccount(AccountDto data);

    void deleteUserDepartByAID(int aid);

    void deleteUserRoleByAID(int aid);

    //查询手机号是否已经存在
    String isPhoneExist(String mobilephone);

    //查询用户信息
    AccountDto findAccountByAID(int aid);

    //用户所属角色
    List<RoleDto> getRolesByAID(int aid);

    //用户所属机构
    List<DepartmentDto> getDepartByAID(int aid);

    //根据旧密码修改密码
    Integer isPasswordCorrect(AccountDto data);

    void updatePasswordByAID(AccountDto data);

    //修改用户状态
    void updateAccountStatus(AccountDto data);

}
